import type { Dayjs } from "dayjs";
import type { Candidate } from "../candidate";
import type { User } from "../user";

export interface Interview {
  /** 数据唯一标识 */
  id?: string;
  
  /** 面试标题 */
  title?: string | null;
  
  /** 面试方式id */
  interviewWayId?: string | null;
  
  /** 面试类别id */
  interviewCategoryId?: string | null;
  
  /** 接待人邮箱 */
  receiverEmail?: string | null;
  
  /** 抄送人 */
  carbonCopyEmail?: string | null;
  
  /** 面试时间 */
  interviewDate?: Date | string | null | Dayjs;
  
  /** 面试时长（分钟） */
  interviewDuration?: number | null;
  
  /** 面试地址 */
  address?: string | null;
}

export interface ArrangeInterview extends Interview {
  /** 候选人id集合  */
  candidateIdList?: string[]
  /** 面试官id集合  */
  interviewerIdList?: string[]
}

export interface ArrangeInterviewFormProps extends Interview {
  /** 面试官id集合  */
  interviewerIdList?: string[]
  /** 选择的面试官名称字符串  */
  interviewerNameStr?: string
  /** 选择的面试官数据  */
  interviewerList?: User[]
  /** 候选人集合  */
  candidateList?: Candidate[]
}

export interface InterviewInfoDto extends ArrangeInterview {
    /** 面试官名称 */
    interviewerName?: string
    /** 候选人名称 */
    candidateName?: string
    /** 当前页数 */
    current: number
    /** 每页显示条数 */
    size: number
}

export interface InterviewInfoVo extends ArrangeInterview{
   /** 面试官名称 */
    interviewersName?: string
    /** 候选人名称 */
    candidateName?: string
}